Wireless packet communication method and wireless packet communication apparatus

ABSTRACT

Data packets are transmitted between two STAs capable of using plural radio channels and MIMO together, by using idle channels and MIMO. When at least one idle channel has been detected, plural data packets are generated in the same number as the sum of MIMO numbers of the respective idle channels, in which the data packets are generated from one or plural data frames, and plural data packets having the same packet time length are transmitted simultaneously between the two STAs by using the idle channels and MIMO.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority fromJapanese Patent Application Nos. 2003-173949, 2003-173922 and2003-173914, all filed on Jun. 18, 2003, and No. 2003-199229, filed onJul. 18, 2003, the entire contents of which are incorporated herein byreference.

TECHNICAL FIELD

The present invention relates to a wireless packet communication methodand a wireless packet communication apparatus for transmitting pluraldata packets simultaneously between two stations (hereinafter STA) usingplural radio channels and/or Multiple Input Multiple Output (hereinafterMIMO).

BACKGROUND ART

In conventional wireless packet communication apparatus, only one radiochannel to be used is determined in advance, whether this radio channelis idle or not is detected (carrier sense) before transmission of a datapacket, and one data packet is transmitted only if the radio channel isidle. This kind of control allows plural STAs to share a single radiochannel by using it during periods that are deviated from each other((1) International Standard ISO/IEC 8802-11 ANSI/EEE Std. 802.11, 1999edition, Information technology—Telecommunications and informationexchange between systems—local and metropolitan area networks—Specificrequirements—part 11: Wireless LAN Medium Access Control (MAC) andPhysical Layer (PHY) specifications; (2) Low-powered Data CommunicationSystem/Broadband Mobile Access Communication System (CSMA) standard,ARIB STD-T71 version 1.0, Association of Radio Industries andBusinesses, settled in 2000).

In such wireless packet communication apparatus, one method forincreasing the maximum throughput is to increase the data transmissionrate of a PHY layer by widening the frequency band per radio channel.

However, as pointed out in a document (Iizuka et al., “5 GHz WirelessLAN System based on the IEEE802.11a standard—Packet TransmissionCharacteristics—”, B-5-124, Proceedings of The Institute of Electronics,Information and Communication Engineers Society Conference 2000,September 2000), to avoid packet collision, it is necessary to set,immediately after transmission of a packet, a prescribed transmissiondeferral duration that is independent of the data transmission rate of aPHY layer. Where such a transmission deferral duration is set, the datapacket transmission efficiency (i.e., the ratio of the maximumthroughput to the data transmission rate of a PHY layer) decreases asthe data transmission rate of a PHY layer increases. Therefore, it isdifficult to increase the throughput greatly merely by increasing thedata transmission rate of a PHY layer.

In contrast, application of a MIMO technique (Kurosaki et al., “100Mbit/s SDM-COFDM over MIMO Channel for Broadband Mobile Communications,”Technical Reports of The Institute of Electronics, Information andCommunication Engineers, A•P2001-96, RCS2001-135 (2001-10)) is beingconsidered as a method for increasing the maximum throughput withoutincreasing the frequency band per radio channel. This MIMO technique issuch that different data packets are sent simultaneously from pluralantennas on the same radio channel and the plural data packetstransmitted simultaneously on the same radio channel are received byperforming pieces of digital signal processing corresponding torespective propagation coefficient differences of data packets receivedby plural antennas of a cooperating STA. The MIMO number is determinedin accordance with the propagation coefficient etc.

On the other hand, where each STA has plural wireless network interfacesand hence can use plural radio channels, it is expected that thethroughput can be made higher than in the case of a communication methodin which a single radio channel is time-divided, by causing plural STAsto use different radio channels.

However, where the center frequencies of the plural radio channels usedsimultaneously are close to each other, the influence of leakage powerthat leaks from the frequency range of one radio channel to that ofanother radio channel is large. In general, in transmitting a datapacket, after a transmit-side station has sent a data packet areceive-side station returns, to the transmit-side station, a deliveryacknowledgment packet (ACK packet, NACK packet) for a data packetreceived by the receive-side station. When the transmit-side stationattempts to receive this delivery acknowledgment packet, leakage powerfrom another radio channel that is being used simultaneously fortransmission is problematic.

For example, assume a case that as shown in FIG. 21 the centerfrequencies of radio channels #1 and #2 are close to each other anddifferent times are required for transmission of data packets that aretransmitted simultaneously on those radio channels. In this example, thedata packet that is transmitted on radio channel #1 is short. Therefore,radio channel #2 is still used for transmission when an ACK packet isreceived. As a result, the ACK packet may not be received on radiochannel #1 due to leakage power from radio channel #2. In this type ofsituation, increase in throughput is not expected even if transmissionsare performed simultaneously by using plural radio channels.

This kind of case occurs due to a difference between in packet timelength ((time required for transmission)=(data size)) between datapackets in the case where the transmission rates of respective radiochannels are the same, and due to a difference in packet time length((time required for transmission)=(data size)/(transmission rate))between data packets in the case where the transmission rates ofrespective radio channels are taken into consideration.

Incidentally, in wireless LAN systems etc., the data sizes of dataframes that are input from a network are not constant. Therefore, wheninput data frames are converted to data packets and transmittedsequentially, the packet time lengths (times required for transmission)of respective data packets vary. Therefore, as shown in FIG. 21, even ifplural data packets are transmitted simultaneously, the packet timelengths of the respective data packets are different from each other andit is highly probable that the reception of an ACK packet fails.

An object of the present invention is to provide a wireless packetcommunication method and a wireless packet communication apparatuscapable of transmitting plural data packets simultaneously between twoSTAs and increasing the throughput even if power leakage occurs betweenradio channels, in the case where each STA can use plural radio channelssimultaneously.

DISCLOSURE OF THE INVENTION

A first aspect of the invention provides a wireless packet communicationmethod for transmitting a data packet between two STAs capable of usingplural radio channels, by using a radio channel that is judged idle bycarrier sensing, wherein when it is detected by the carrier sensing thatplural radio channels are idle at the same time, plural data packets aretransmitted simultaneously between the two STAs by using plural idleradio channels.

A second aspect of the invention provides a wireless packetcommunication method for transmitting a data packet between two STAscapable of using plural radio channels, by using a radio channel that isjudged idle by carrier sensing, wherein when it is detected by thecarrier sensing that plural radio channels are idle at the same time,plural data packets having the same packet time length are generated andplural data packets having the same packet time length are transmittedsimultaneously between the two STAs by using plural idle radio channels.

A third aspect of the invention provides a wireless packet communicationmethod for transmitting a data packet between two STAs capable of usingplural radio channels and setting transmission rates for respectiveradio channels, by using a radio channel that is judged idle by carriersensing, wherein when it is detected by the carrier sensing that pluralradio channels are idle at the same time, plural data packets having thesame packet time length are generated in accordance with transmissionrates of plural idle radio channels and plural data packets having thesame packet time length are transmitted simultaneously between the twoSTAs by using plural idle radio channels.

A fourth aspect of the invention provides a wireless packetcommunication method for transmitting a data packet between two STAscapable of using plural radio channels and setting transmission ratesfor respective radio channels, by using a radio channel that is judgedidle by carrier sensing, wherein when it is detected by the carriersensing that plural radio channels are idle at the same time,transmission rates of plural idle radio channels are set to the sametransmission rate, plural data packets having the same packet timelength are generated, and plural data packets having the same packettime length are transmitted simultaneously between the two STAs by usingplural idle radio channels.

According to a fifth aspect of the invention, in the fourth aspect ofthe invention, the transmission rates of the plural idle radio channelsare set equal to a lowest one of the transmission rates.

A sixth aspect of the invention provides a wireless packet communicationmethod for transmitting a data packet between two STAs capable of usingMIMO, by using a radio channel that is judged idle by carrier sensing,wherein when it is detected by the carrier sensing that at least oneradio channel is idle, plural data packets having the same packet timelength are generated and plural data packets having the same packet timelength are transmitted simultaneously between the two STAs by using oneidle radio channel and the MIMO.

According to a seventh aspect of the invention, in any one of the firstto fifth aspects of the invention, plural data packets having the samepacket time length are transmitted simultaneously in a number that isequal to the sum of MIMO numbers of plural, respective radio channelsbetween the two STAs capable of using plural radio channels and MIMOtogether by using plural idle radio channels and the MIMO.

According to an eighth aspect of the invention, in any one of the firstto seventh aspects of the invention, while the STA itself is performinga transmission on at least one radio channel, the STA selects, from idleradio channels, a radio channel or channels that do not receiveinfluence of leakage power from the radio channel being used for thetransmission.

According to a ninth aspect of the invention, in any one of the first toseventh aspects of the invention, while the STA itself is performing atransmission on at least one radio channel, the STA prohibitstransmission process including carrier sensing until completion of thetransmission.

According to the tenth aspect of the invention, in any one of the firstto fifth aspects of the invention, the STA transmits, simultaneously,data packets generated from all transmission-standby data frames if thenumber of transmission-standby data frames is smaller than or equal tothe number of idle channels, and generates and transmits,simultaneously, data packets whose number is equal to the number of idlechannels if the number of transmission-standby data frames exceeds thenumber of idle channels.

According to the eleventh aspect of the invention, in any one of thefirst to fifth aspects of the invention, if the number K oftransmission-standby data frames exceeds the number N of idle channels,the STA waits until a relationship N≧K is satisfied, all radio channelsbecome idle before the relationship N≧K is satisfied, a prescribed timeelapses before the relationship N≧K is satisfied, or the number or adata size of transmission-standby data frames reaches a prescribed valuebefore the relationship N≧K is satisfied, and then generates datapackets in a number that is suitable for the number of current idlechannels and transmits the generated data packets simultaneously.

According to the twelfth aspect of the invention, in any one of thefirst to fifth aspects of the invention, if the number K oftransmission-standby data frames is smaller than the number N of idlechannels, the STA waits until a relationship N=K is satisfied, aprescribed time elapses before the relationship N=K is satisfied, or thenumber or a data size of transmission-standby data frames reaches aprescribed value before the relationship N=K is satisfied, and thengenerates and transmits, simultaneously, plural data packets.

According to a thirteenth aspect of the invention, in the sixth aspectof the invention, the STA transmits, simultaneously, data packetsgenerated from all transmission-standby data frames if the number oftransmission-standby data frames is smaller than or equal to a MIMOnumber, and generates data packets whose number is equal to the MIMOnumber and transmits the generated data packets simultaneously if thenumber of transmission-standby data frames exceeds the MIMO number.

According to a fourteenth aspect of the invention, in the seventh aspectof the invention, the STA transmits, simultaneously, data packetsgenerated from all transmission-standby data frames if the number oftransmission-standby data frames is smaller than or equal to the numberof simultaneous transmissions that is the sum of the MIMO numbers of theplural, respective radio channels, and generates data packets whosenumber is equal to the number of simultaneous transmissions andtransmits the generated data packets simultaneously if the number oftransmission-standby data frames exceeds the number of simultaneoustransmissions.

According to the fifteenth aspect of the invention, in the seventhaspect of the invention, if the number K of transmission-standby dataframes exceeds the number of simultaneous transmissions T that is thesum of the MIMO numbers of the plural, respective radio channels, theSTA waits until a relationship T≧K is satisfied, all radio channelsbecome idle before the relationship T≧K is satisfied, a prescribed timeelapses before the relationship T K is satisfied, or the number or adata size of transmission-standby data frames reaches a prescribed valuebefore the relationship T≧K is satisfied, and then generates datapackets in a number that is suitable for the current number ofsimultaneous transmissions and transmits the generated data packetssimultaneously.

According to the sixteenth aspect of the invention, in the seventhaspect of the invention, if the number K of transmission-standby dataframes is smaller than the number of simultaneous transmissions T thatis the sum of the MIMO numbers of the plural, respective radio channels,the STA waits until a relationship T=K is satisfied, a prescribed timeelapses before the relationship T=K is satisfied, or the number or adata size of transmission-standby data frames reaches a prescribed valuebefore the relationship T=K is satisfied, and then generates andtransmits, simultaneously, plural data packets.

According to the seventeenth aspect of the invention, in the seventhaspect of the invention, the STA selects, on the basis of at least oneof the number of idle channels, a MIMO number of each radio channel, andthe number of transmission-standby data frames, one of a first mode inwhich a single radio channel is used and MIMO is not used, a second modein which a single radio channel and MIMO are used, a third mode in whichplural radio channels are used and MIMO is not used, and a fourth modein which plural radio channels and MIMO are used.

An eighteenth aspect of the invention provides a wireless packetcommunication apparatus for transmitting a data packet between two STAscapable of using plural radio channels, by using a radio channel that isjudged idle by carrier sensing, comprising transmission buffer block,channels' occupation status analyzing block, data packet generatingblock, packet switching block, and data frame management block.

The transmission buffer block temporarily holds data frames to betransmitted, holds information regarding stored data packets thatcorrelates address information of data frames in its possession withpacket sizes, and reads out and outputs a requested data packet whenreceiving a packet sending request. The channels' occupation statusanalyzing block acquires pieces of idle/busy state judgment informationof a predetermined plural number of, respective radio channels. The datapacket generating block extracts a data region or regions from one orplural received data frames, generates plural data blocks having thesame packet time length, and generates data packets by adding necessaryheader information to the data blocks. The packet switching blockcorrelates the data packets generated by the data packet generatingblock with radio channels to be used for transmission, respectively.

The data frame management block determines one or plural data framesfrom which to generate data packets on the basis of pieces ofinformation relating to respective data frames that are communicatedfrom the transmission buffer block and information relating to radiochannels that is communicated from the channels' occupation statusanalyzing block, determines a method for generating plural data packetsfrom one or plural data frames in accordance with the number of idlechannels, determines radio channels on which to transmit the pluralgenerated data packets, gives the transmission buffer block designationof a data frame or frames to be output, informs the data packetgenerating block of a method for generating data packets from one orplural data frames that are output from the transmission buffer block,and communicates, to the packet switching block, information that isnecessary for correlating the data packets with the radio channels. Assuch, the data frame management block performs a control fortransmitting plural data packets simultaneously between the two STAsusing plural idle radio channels.

A nineteenth aspect of the invention further includes in the eighteenthaspect of the invention, MIMO block that transmits plural independentsignals simultaneously on the respective radio channels.

According to a twentieth aspect of the invention, in the eighteenth ornineteenth aspect of the invention, the data frame management blockperforms a control for generating plural data packets having the samepacket time length from one or plural data frames when it is detected bythe carrier sensing that plural radio channels are idle at the sametime.

According to a twenty-first aspect of the invention, in the eighteenthor nineteenth aspect of the invention, the two STAs include blockcapable of setting transmission rates for respective radio channels, andthat the data frame management block performs a control for generatingplural data packets having the same packet time length from one orplural data frames in accordance with transmission rates of plural idleradio channels when it is detected by the carrier sensing that pluralradio channels are idle at the same time.

According to the twenty-second aspect of the invention, in theeighteenth or nineteenth aspect of the invention, the two STAs includeblock capable of setting transmission rates for respective radiochannels, and that the data frame management block performs controls forsetting transmission rates of plural idle radio channels to the sametransmission rate and for generating plural data packets having the samepacket time length from one or plural data frames when it is detected bythe carrier sensing that plural radio channels are idle at the sametime.

A twenty-third aspect of the invention further includes, in theeighteenth or nineteenth aspect of the invention, block that, while itsown station is performing a transmission on at least one radio channel,selects, from idle radio channels, a radio channel or channels that donot receive influence of leakage power from the radio channel being usedfor the transmission.

A twenty-fourth aspect of the invention further includes, in theeighteenth or nineteenth aspect of the invention, block that, while itsown station is performing a transmission on at least one radio channel,prohibits transmission process including carrier sensing untilcompletion of the transmission.

According to a twenty-fifth aspect of the invention, in the eighteenthor nineteenth aspect of the invention, the data frame management blockincludes means that selects, on the basis of at least one of the numberof idle channels, a MIMO number of each radio channel, and the number oftransmission-standby data frames, one of a first mode in which a singleradio channel is used and MIMO is not used, a second mode in which asingle radio channel and MIMO are used, a third mode in which pluralradio channels are used and MIMO is not used, and a fourth mode in whichplural radio channels and MIMO are used.

BRIEF DESCRIPTION OF THE DRAWINGS

The nature, principle, and utility of the invention will become moreapparent from the following detailed description when read inconjunction with the accompanying drawings in which like parts aredesignated by identical reference numbers, in which:

FIG. 1 is a flowchart showing a process of a first embodiment of thepresent invention;

FIG. 2 has time charts showing exemplary operations of the firstembodiment of the invention;

FIG. 3 is a flowchart showing a process of a second embodiment of theinvention;

FIG. 4 has time charts showing exemplary operations of the secondembodiment of the invention;

FIG. 5 is a flowchart showing a process of a third embodiment of theinvention;

FIG. 6 has time charts showing exemplary operations of the thirdembodiment of the invention;

FIG. 7 is a flowchart showing a process of a fourth embodiment of theinvention;

FIG. 8 is a flowchart showing a process of a fifth embodiment of theinvention;

FIG. 9 is a flowchart showing a process of a seventh embodiment of theinvention;

FIG. 10 is a flowchart showing a process of an eighth embodiment of theinvention;

FIG. 11 illustrates methods for generating a data packet(s) from one orplural data frames;

FIG. 12 is a flowchart showing a process of a ninth embodiment of theinvention;

FIG. 13 is a flowchart showing a process of a 10th embodiment of theinvention;

FIG. 14 illustrates methods for generating two data packets from threedata frames;

FIG. 15 is a flowchart showing a process of an 11 th embodiment of theinvention;

FIG. 16 is a flowchart showing a process of a 12th embodiment of theinvention;

FIG. 17 is a time chart showing an exemplary operation of the 12thembodiment of the invention;

FIG. 18 is a flowchart showing a process of a 13th embodiment of theinvention;

FIG. 19 is a flowchart showing a process of a 14th embodiment of theinvention;

FIG. 20 is a time chart showing an exemplary operation of the 13thembodiment of the invention;

FIG. 21 is a time chart illustrating a problem of a case that thecentral frequencies of plural radio channels are close to each other;and

FIG. 22 is a block diagram showing the configuration of an exemplarywireless packet communication apparatus according to the invention.

BEST MODE FOR CARRYING OUT THE INVENTION First Embodiment

FIG. 1 is a flowchart showing a first embodiment of the presentinvention. FIG. 2 shows exemplary operations of the first embodiment ofthe invention. It is assumed here that radio channels #1, #2, and #3 areprepared between two STAs. The following description will be made withan assumption that transmission-standby data frames in a transmissionbuffer are to be transmitted between the two STAs and have the samedestination.

Idle radio channels are searched for from all available radio channelsby carrier sensing (S001). The number of all channels is represented byM and the number of detected idle channels is represented by N. If oneor more idle radio channels are detected, the number K oftransmission-standby data frames is acquired by searching thetransmission buffer (S002, S003). If no transmission-standby data frameis detected (K=0), the process returns to the carrier sensing. If thenumber K of transmission-standby data frames is larger than or equal to1, the process moves to the next step (S004). If K=1 or N=1, one datapacket is generated from one data frame and is transmitted by using oneradio channel (S005, S006, S007).

If K≧2 and N≧2, first, the number K of transmission-standby data framesis compared with the number N of idle channels (S008). If K>N, N datapackets are generated by selecting N data frames from the K data framesand are transmitted simultaneously by using the N (i.e., all) radiochannels (S009). In this case, the (K−N) data frames are caused to standby until the next transmission opportunity. On the other hand, if N≧K, Kdata packets are generated by selecting the K (i.e., all) data framesand are transmitted simultaneously by using K radio channels (S010). Inthis case, the (N−K) radio channels are kept idle. The above process isexecuted repeatedly.

The example of FIG. 2(1) corresponds to step S009. At time t1, carriersensing finds that two radio channels #1 and #2 are idle at the sametime and the number K of transmission-standby data frames is equal to 3.Therefore, two data packets are generated and transmitted simultaneouslyby using radio channels #1 and #2. The example of FIG. 2(2) correspondsto step S010. At time t1, carrier sensing finds that three radiochannels #1-#3 are idle at the same time and the number K oftransmission-standby data frames is equal to 2. Therefore, two datapackets are transmitted simultaneously by using radio channels #1 and#2, for example.

As described above, if plural idle radio channels exist at the sametime, plural data packets are generated by selecting plural data packetsfrom plural data frames and are transmitted simultaneously by usingplural radio channels. Therefore, the number of data frames that can betransmitted in a unit time can be increased greatly.

Radio channel #3 shown in FIG. 2(2) and a radio channel that has becomeidle as a result of completion of a transmission can be used for anindependent transmission and can be used for, for example, acommunication with another STA. If plural such (i.e., idle) radiochannels exist, transmissions can be performed simultaneously in thesame manner as described above.

If excess radio channels exist as in the case of FIG. 2(2), a diversityeffect may be obtained on the reception side by copying part of datapackets transmitting those simultaneously.

Second Embodiment

FIG. 3 is a flowchart showing a second embodiment of the invention. FIG.4 shows exemplary operations of the second embodiment of the invention.It is assumed here that radio channels #1, #2, and #3 are preparedbetween two STAs. The following description will be made with anassumption that transmission-standby data packets in a transmissionbuffer are to be transmitted between the two STAs and have the samedestination.

An important feature of this embodiment, which differentiates thisembodiment from the first embodiment, is to use MIMO. Idle radiochannels are searched for from all available radio channels by carriersensing (S001). The number of all channels is represented by M and thenumber of detected idle channels is represented by N. If one or moreidle radio channels are detected, the sum of MIMO numbers of therespective radio channels is calculated as the number of simultaneoustransmissions (S002, S101). For the sake of simplicity, the followingdescription will be made with an assumption that the MIMO numbers of therespective radio channels are the same and the number of simultaneoustransmissions is equal to the product (NL) of the number N of idlechannels and the MIMO number L.

Then, the number K of transmission-standby data frames is acquired bysearching the transmission buffer (S003). If no transmission-standbydata frame is detected (K=0), the process returns to the carriersensing. If the number K of transmission-standby data frames is largerthan or equal to 1, the process moves to the next step (S004). If K=1,one data packet is transmitted by using one radio channel as in the caseof the first embodiment (this step is omitted in FIG. 3).

If K≧2 and NL≧2, first, the number K of transmission-standby data framesis compared with the number N of idle channels (S008). If N≧K, K datapackets are generated by selecting the K (i.e., all) data frames and aretransmitted simultaneously by using K radio channels (S010). In thiscase, MIMO is not used and the (N−K) radio channels are kept idle. Onthe other hand, if K>N, the number K of transmission-standby data framesis compared with the number of simultaneous transmissions NL (S102). IfK>NL, NL data packets are generated by selecting NL data frames from theK data frames and are transmitted simultaneously by using the N (i.e.,all) radio channels and MIMO (S103). In this case, the (K−NL) dataframes are caused to stand by until the next transmission opportunity.

If NL≧K, K data packets are generated from the K (i.e., all) data framesand are transmitted simultaneously by using the N radio channels andMIMO (S104). The MIMO number per radio channel is set larger than orequal to floor(K/N) and smaller than or equal to ceil(K/N), wherefloor(x) means the maximum integer that is smaller than or equal to x(rounding down) and ceil(x) means the minimum integer that is greaterthan or equal to x (rounding up).

The example of FIG. 4(1) corresponds to step S103. At time t1, carriersensing finds that two radio channels #1 and #2 are idle at the sametime, the MIMO number L of each radio channel is equal to 2, and thenumber K of transmission-standby data frames is equal to 5. Therefore,four data packets are generated and transmitted simultaneously by usingradio channels #1 and #2 and MIMO.

The example of FIG. 4(2) corresponds to step S104. At time t1, carriersensing finds that two radio channels #1 and #2 are idle at the sametime, the MIMO number L of each radio channel is equal to 3, and thenumber K of transmission-standby data frames is equal to 3. In thiscase, three data packets are transmitted simultaneously by using radiochannels #1 and #2 and MIMO. At step S104, to make maximum use of MIMO,it is possible to transmit three data packets simultaneously by MIMOusing one radio channel that corresponds to ceil(K/L).

The example of FIG. 4(3) corresponds to step S010. At time t1, carriersensing finds that three radio channels #1-#3 are idle at the same timeand the number K of transmission-standby data frames is equal to 2.Therefore, two data packets are transmitted simultaneously by usingradio channels #1 and #2, for example. In this case, MIMO is not used.

Third Embodiment

FIG. 5 is a flowchart showing a third embodiment of the invention. FIG.6 shows exemplary operations of the third embodiment of the invention.It is assumed here that radio channels #1, #2, and #3 are preparedbetween two STAs. The following description will be made with anassumption that transmission-standby data packets in a transmissionbuffer are to be transmitted between the two STAs.

An important feature of this embodiment, which differentiates thisembodiment from the second embodiment, is to properly use plural radiochannels and MIMO in accordance with the number N of idle channels, theMIMO number L, and the number K of transmission-standby data frames.More specifically, selection is made among a first mode in which asingle radio channel is used and MIMO is not used, a second mode inwhich a single radio channel and MIMO are used, a third mode in whichplural radio channels are used and MIMO is not used, and a fourth modein which plural radio channels and MIMO are used.

If the number K of transmission-standby data frames is equal to 1, onedata packet is generated from one data frame and is transmitted by usingone radio channel (S005, S007; first mode). If the number K oftransmission-standby data frames is larger than or equal to 2, thenumber N of idle radio channels is checked. If N=1, plural data packetsare generated by selecting plural (in L at the maximum) data frames fromthe K data frames and are transmitted simultaneously using the one radiochannel and MIMO (S006, S107; second mode).

If N≧2, the number K of transmission-standby data frames is comparedwith the number N of idle radio channels and the MIMO number L. If K>Nand K>L, it is impossible to transmit all data packets using only pluralradio channels or one radio channel and MIMO. Therefore, plural datapackets are generated by selecting plural (LN at the maximum) dataframes from the K data frames and are transmitted simultaneously byusing plural radio channels and MIMO (S105, S109; fourth mode). The MIMOnumber per radio channel is set larger than or equal to floor(K/N) andsmaller than or equal to ceil(K/N).

If N≧K or L≧K, K is compared with N. If N≧K, K data packets aregenerated from the K (i.e., all) data frames and are transmittedsimultaneously by using K radio channels (S106, S108; third mode). Inthis case, MIMO is not used. On the other hand, if K>N, all data packetscan be transmitted by using one radio channel because L≧K. Therefore, Kdata packets are generated from the K (i.e., all) data frames and aretransmitted simultaneously by using one radio channel and MIMO (S107).

The example of FIG. 6(1) corresponds to steps S006 and S007. At time t1,carrier sensing finds that radio channel #1 is idle, the MIMO number Lis equal to 2, and the number K of transmission-standby data frames isequal to 3. Therefore, two data packets are transmitted simultaneouslyby using radio channel #1 and MIMO.

The example of FIG. 6(2) corresponds to step S108. At time t1, carriersensing finds that three radio channels #1, #2, and #3 are idle at thesame time and the number K of transmission-standby data frames is equalto 2. Therefore, two data packets are transmitted simultaneously byusing radio channels #1 and #2. In this case, MIMO is not used.

The example of FIG. 6(3) corresponds to step S108. At time t1, carriersensing finds that two radio channels #1 and #2 are idle at the sametime, the MIMO number L of each radio channel is equal to 2, and thenumber K of transmission-standby data frames is equal to 3. In thiscase, three data packets are transmitted simultaneously by using radiochannels #1 and #2 and MIMO.

It is also possible to employ only the first to third modes, forexample. This corresponds to a case that condition 1 “priority is givento one of the MIMO and the simultaneous use of plural channels, the oneenabling simultaneous transmission of more data frames” and condition 2“a higher priority is given to the simultaneous use of plural channelsthan to the MIMO” are set and condition 1 takes priority over condition2.

Fourth Embodiment

In the above-described embodiments, when the number K oftransmission-standby data frames is larger than the number N of idlechannels or the number of simultaneous transmissions NL (K>N or K>NL),as large a number of transmission-standby data frames as possible aretransmitted by using all the radio channels as in the cases of step S009of the first embodiment, step S103 of the second embodiment, and stepS109 of the third embodiment. However, a part of the data frames remainuntransmitted and stand by until the next transmission opportunity. Inthis kind of situation, waiting for satisfaction of a condition (N≧K)for enabling all the data frames to be transmitted at one time mayincrease the transmission efficiency. However, waiting for satisfactionof such a condition limitlessly may lower the transmission efficiencycontrary to the intention, and hence a certain time-related limitationis necessary. It is also necessary to take the storage status of thetransmission buffer into consideration.

FIG. 7 is a flowchart showing a fourth embodiment of the invention. Thisembodiment is directed to a waiting condition in the case of K>N in thefirst embodiment.

If all the channels are judged idle (N=M) before a relationship N≧K issatisfied after a judgment result K>N was produced at step S008, waitingdoes not produce an opportunity to transmit K data packetssimultaneously. Therefore, N data packets that are generated throughselection from the K data frames are transmitted simultaneously by usingthe N radio channels (S201, S009).

If not all of the channels are idle (M>N), waiting is done until aprescribed time t elapses from the start of this process before therelationship N≧K is satisfied or the number K of data frames in thetransmission buffer exceeds the buffer threshold value W before therelationship N≧K is satisfied. N data packets that are generated throughselection from the K data frames at that time point are transmittedsimultaneously by using the N radio channels (S202, S203, S009). Thebuffer threshold value W may have a data frame number or a total datasize of data frames as a unit.

Fifth Embodiment

FIG. 8 is a flowchart showing a fifth embodiment of the invention. Thisembodiment is directed to a waiting condition in the case of K>NL in thesecond embodiment.

If all the channels are judged idle (N=M) before a relationship NL≧K issatisfied after a judgment result K>NL was produced at step S102,waiting does not produce an opportunity to transmit K data packetssimultaneously. Therefore, NL data packets that are generated throughselection from the K data frames are transmitted simultaneously by usingthe N radio channels and MIMO (S201, S103).

If not all of the channels are idle (M>N), waiting is done until aprescribed time t elapses from the start of this process before therelationship NL≧K is satisfied or the number K of data frames in thetransmission buffer exceeds the buffer threshold value W before therelationship NL≧K is satisfied. NL data packets that are generatedthrough selection from the K data frames at that time point aretransmitted simultaneously by using the N radio channels and MIMO (S202,S203, S103). The buffer threshold value W may have a data frame numberor a total data size of data frames as a unit.

Sixth Embodiment

In the above-described embodiments, when the number K oftransmission-standby data frames is smaller than the number N of idlechannels or the number of simultaneous transmissions NL (N≧K or NL≧K),the number K of radio channels or the number of simultaneoustransmissions NL has some margin whereas all the transmission-standbydata frames are transmitted, as in the cases of step S010 of the firstto fifth embodiments and step S104 of the second and fifth embodiments.In this kind of situation, waiting for satisfaction of a condition (N=Kor NL=K) for enabling maximum use of radio channels may increase thetransmission efficiency. However, waiting for satisfaction of such acondition limitlessly may lower the transmission efficiency contrary tothe intention, and hence a certain time-related limitation is necessary.It is also necessary to take the storage status of the transmissionbuffer into consideration.

In the sixth embodiment, waiting is done until a transition occurs froma state of N>K to a state of N=K at step S008 of each of the first tofifth embodiments, a prescribed time t elapses from the start of thisprocess before a relationship N=K is satisfied, or the number K of dataframes in the transmission buffer exceeds the buffer threshold value Wbefore the relationship N=K is satisfied. Then, K data packets that aregenerated from the K data frames are transmitted simultaneously by usingthe K radio channels (S010).

Likewise, waiting is done until a transition occurs from a state of NL>Kto a state of NL=K at step S102 of the second or fifth embodiment, aprescribed time t elapses from the start of this process before arelationship NL=K is satisfied, or the number K of data frames in thetransmission buffer exceeds the buffer threshold value W before therelationship NL=K is satisfied. Then, K data packets that are generatedfrom the K data frames are transmitted simultaneously by using the Nradio channels and MIMO (S104).

Seventh Embodiment

FIG. 9 is a flowchart showing a seventh embodiment of the invention. Animportant feature of this embodiment, which differentiates thisembodiment from the first embodiment, is that data frames having thesame packet time length among transmission-standby data frames in atransmission buffer to be transmitted between two STAs are subjected toprocessing.

Idle radio channels are searched for from all available radio channelsby carrier sensing (S001). The number K of transmission-standby dataframes is acquired by searching the transmission buffer (S002, S003). IfK=1 or N=1, one data packet is generated from one data frame and istransmitted by using one radio channel (S005, S006, S007).

If K≧2 and N≧2, data frames having the same packet time length (i.e.,data packets that are the same in the time required for transmission)and the number of those data frames is represented by P (S301). Forexample, the head data frame and all data frames having the same packettime length as the head data frame are selected from the data frames inthe transmission buffer.

Then, the number P of data frames having the same packet time length iscompared with the number N of idle channels (S302). If P>N, N datapackets are generated by selecting N data frames from the P data framesand are transmitted simultaneously by using the N (i.e., all) radiochannels (S303). In this case, the (P−N) data frames are caused to standby until the next transmission opportunity. On the other hand, if N≧P, Kdata packets are generated by selecting the P (i.e., all) data framesand the P data packets are transmitted simultaneously by using P radiochannels (S304). In this case, the (N−P) radio channels are kept idle.The above process is executed repeatedly.

According to this embodiment, in transmitting plural data packetssimultaneously using plural radio channels, a phenomenon that leakagepower from one radio channel influences another can be avoided byequalizing packet time lengths as shown in FIG. 2, for example. That is,since transmissions of simultaneously transmitted data packets end atthe same time, ACK packets that arrive after those transmissions can bereceived without any influence of leakage power.

If plural simultaneously transmitted data packets have different packettime lengths, the transmissions of those data packets end at times thatare different from each other by time lengths corresponding todifferences between the packet time lengths. Therefore, differencescorresponding to the differences between the packet time lengths occurin the reception timing of ACK packets. However, if the differencesbetween the packet time lengths of the data packets are sufficientlysmall and the differences between the transmission end times of the datapackets are shorter than time lengths to the starts of reception of ACKpackets, the ACK packets can be received without any influence ofleakage power. Therefore, for example, the number P of all data frameswhose packet time lengths have sufficiently small differences among thedata frames in the transmission buffer may be acquired at step S301.

As described above, when plural idle radio channels exist at the sametime, plural data packets having the same packet time length aretransmitted simultaneously by using the plural radio channels. Thismakes it possible to greatly increase the number of data packets thatcan be transmitted in a unit time and to increase the throughputreliably.

The process of this embodiment is such that step S301 is added to theprocess of the first embodiment and K is replaced by P. Likewise, theprocesses of the second to fifth embodiments may be modified in such amanner that step S301 is added and K is replaced by P.

Eighth Embodiment

In the above-described embodiments, the numbers of radio channels anddata frames for simultaneous transmissions are correlated with eachother on the basis of the relationship between the number K oftransmission-standby data frames in the transmission buffer or thenumber P of data frames having the same packet time length among thosedata frames and the number N of idle channels or the number ofsimultaneous transmissions. An important feature of an eighth embodimentis that N data packets corresponding to the number N of idle channelsare generated from one or plural transmission-standby data frames in thetransmission buffer and are transmitted simultaneously.

FIG. 10 is a flowchart showing the eighth embodiment of the invention.It is assumed here that all available radio channels have the sametransmission rate.

Idle radio channels are searched for from all available radio channelsby carrier sensing (S001). The number of detected idle channels isrepresented by N. If one or more idle radio channels are detected, thetransmission buffer is searched to check whether a transmission-standbydata frame(s) exists there (S002, S401). If no transmission-standby dataframe exists, the process returns to the carrier sensing. If atransmission-standby data frame(s) exists, the process moves to the nextstep (S402). If N=1, one data packet is generated from one or pluraldata frames (S006, S403) and is transmitted by using the one radiochannel (S404).

If the number N of idle channels is larger than or equal to 2, N datapackets having the same packet time length (data size) are generatedfrom one or plural data frames in the transmission buffer (S405). Then,the N data packets having the same packet time length are transmittedsimultaneously by using the N radio channels (S406).

A method for generating one data packet from one or plural data framesand methods for generating plural data packets to be transmittedsimultaneously are as follows. For example, when two data frames and oneidle channel exist, one data packet is generated by connecting the dataframes as shown in FIG. 11(1). When one data frame and two idle channelsexist, two data packets are generated by dividing the data frame asshown in FIG. 11(2). When three data frames and two idle channels exist,two data packets are generated by dividing data frame-2, for example,and connecting divisional data frames to data frame-1 and data frame-3,respectively, as shown in FIG. 11(3). The same result is obtained byconnecting the three data frames and dividing a resulting data frameinto two parts. As a further alternative, two data packets having thesame packet time length are generated by combining data frame-1 and dataframe-2 together and adding dummy bits to data frame-3 as shown in FIG.11(4). Where plural radio channels have different transmission rates asin embodiments to be described later, the size ratio of data frames isadjusted so as to be suitable for the transmission rate ratio and tothereby equalize packet time lengths.

Ninth Embodiment

FIG. 12 is a flowchart showing a ninth embodiment of the invention. Itis assumed here that all available radio channels have the sametransmission rate.

An important feature of this embodiment, which differentiates thisembodiment from the eighth embodiment, is to use MIMO. Idle radiochannels are searched for from all available radio channels by carriersensing (S001). The number of detected idle channels is represented byN. If one or more idle radio channels are detected, the sum of MIMOnumbers of the respective radio channels is calculated as the number ofsimultaneous transmissions (S002, S101). For the sake of simplicity, thefollowing description will be made with an assumption that the MIMOnumbers of the respective radio channels are the same and the number ofsimultaneous transmissions is equal to the product (NL) of the number Nof idle channels and the MIMO number L.

Then, the transmission buffer is searched to check whether atransmission-standby data frame(s) exists there (S002, S401). If notransmission-standby data frame exists, the process returns to thecarrier sensing. If a transmission-standby data frame(s) exists, theprocess moves to the next step (S402). If N=1, L data packets having thesame packet time length (data size) are generated from one or pluraldata frames in the transmission buffer (S006, S407) and are transmittedsimultaneously by using the one radio channel and MIMO (S408).

If the number N of idle channels is larger than or equal to 2, NL datapackets having the same packet time length (data size) are generatedfrom one or plural data frames in the transmission buffer (S409). Then,the NL data packets having the same packet time length are transmittedsimultaneously by using the N radio channels and MIMO (S410).

10th Embodiment

FIG. 13 is a flowchart showing a 10th embodiment of the invention. It isassumed here that the transmission rates of all available radio channelscan be set for the respective radio channels.

Idle radio channels are searched for from all available radio channelsby carrier sensing (S001). The number of detected idle channels isrepresented by N. If one or more idle radio channels are detected, thetransmission buffer is searched to check whether a transmission-standbydata frame(s) exists there (S002, S401). If no transmission-standby dataframe exists, the process returns to the carrier sensing. If atransmission-standby data frame(s) exists, the process moves to the nextstep (S402). If N=1, one data packet is generated from one or pluraldata frames (S006, S403) and is transmitted by using the one radiochannel (S404).

If the number N of idle channels is larger than or equal to 2,transmission rates of the respective radio channels are detected (S411).Then, N data packets having the same packet time length ((time requiredfor transmission)=(packet size)/(transmission rate)) are generated fromone or plural data frames in the transmission buffer in accordance withthe transmission rates of the respective radio channels (S412). Then,the transmission rates of the N radio channels are correlated with therespective data packets and the N data packets having the same packettime length are transmitted simultaneously (S413).

This embodiment can similarly be applied to the ninth embodiment, whichutilizes the MIMO.

A process for generating two data packets from three data frames willnow be described with reference to FIG. 14 for an exemplary case thatthe transmission rates of two radio channels are 12 Mbit/s and 24Mbit/s, respectively. The data regions of the three data frames containa data block B1 of 500 bytes, a data block B2 of 1,500 bytes, and a datablock B3 of 1,000 bytes, respectively. For example, the data block B2 isdivided into two data blocks B2 a and B2 b, which are connected to thedata blocks B1 and B3, respectively. In this example, the data sizes ofthe data blocks B1, B2 a, B2 b, and B3 are 500, 500, 1,000, and 1,000,respectively. Therefore, the size of the data region of the first dataframe becomes 1,000 bytes and that of the second data frame becomes2,000 bytes. Data packets are generated by adding, to each of those dataframes, control information including ID information of a destinationterminal and a sequence number indicating a place of the data frame inthe sequence (i.e., one of serial numbers that are independent for eachaddress). The ratio between the sizes of the data regions of the twodata packets thus generated is 1:2, which is the same as the ratiobetween the transmission rates of the corresponding radio channels.Therefore, the times required for transmission of the data packets, thatis, their packet time lengths, are made identical.

11th Embodiment

FIG. 15 is a flowchart showing an 11th embodiment of the invention. Itis assumed here that the transmission rates of all available radiochannels can be set for the respective radio channels.

In this embodiment, the transmission rates of respective radio channelsare set to the same value (S414) instead of detecting transmission ratesof respective radio channels at step S411 in the 10th embodiment. Forexample, the transmission rates of respective radio channels are setequal to the lowest one of those transmission rates. This enables aprocess that is equivalent to a process in which the transmission ratesof respective radio channels are the same from the start as in the caseof the eighth embodiment (S405, S406).

This embodiment can similarly be applied to the ninth embodiment, whichutilizes the MIMO.

12th Embodiment

FIG. 16 is a flowchart showing a 12th embodiment of the invention. FIG.17 shows an exemplary operation of the 12th embodiment of the invention.It is assumed here that all available radio channels have the sametransmission rate.

This embodiment is such that, in the eighth embodiment, if one or moreidle radio channels are detected, whether the own station is performinga transmission on another radio channel and a further transmission(s) isprohibited until the current transmission is finished (S501). In theexample of FIG. 17, at time t1, a transmission is being performed onradio channel #1 though radio channels #2 and #3 are idle. Therefore,transmissions simultaneously are performed on the three channels fromtime t2 after completion of the current transmission. This makes itpossible to prevent a phenomenon that leakage power from one radiochannel influences another.

An alternative process is as follows. Radio channels that are notinfluenced by leakage power from a radio channel on which the ownstation is performing a transmission are selected from the N radiochannels that were detected as idle channels at step S501. The number ofthose radio channels is employed as the number N of idle channels.

This embodiment can similarly be applied to the first to seventhembodiment in addition to the method of the ninth embodiment, whichutilizes the MIMO, and the methods of the 10th and 11th embodiments, inwhich transmission rates can be set for respective STAs.

13th Embodiment

FIG. 18 is a flowchart showing a 13th embodiment of the invention. FIG.20 shows an exemplary operation of the 13th embodiment of the invention.It is assumed here that all available radio channels have the sametransmission rate.

This embodiment is such that, in the eighth embodiment, when one or moreidle radio channels have been detected and a data frame(s) exists in thetransmission buffer, the number N of idle channels is compared with athreshold value Nth to judge whether the number N of idle channels issufficient (S601). If N<Nth, waiting is done until the number N of idlechannels increases to satisfy a relationship N≧Nth. When therelationship N≧Nth has been satisfied, the process moves to step S405,where data packets are generated from a data frame(s).

On the other hand, if a prescribed time t elapses before satisfaction ofthe relationship N≧Nth (S602), the process immediately moves to stepS405, where data packets are generated from a transmission-standby dataframe(s). The generated data packets are transmitted by using the Nradio channels.

In the example of FIG. 20, Nth is set at 3 and radio channels #2 and #3are idle at time t1. Waiting is done because N<Nth. Since the number Nof idle channels becomes 3 (N≧Nth) at time t2 before the prescribed timet elapses, transmissions simultaneously are performed by using the threeradio channels.

In this embodiment, the same waiting condition as in the fourthembodiment is set. It is intended to increase the transmissionefficiency by waiting when the number N of idle channels is small.However, waiting for satisfaction of the condition limitlessly may lowerthe transmission efficiency contrary to the intention, and hence thetime-related limitation is provided. The storage status of thetransmission buffer may be taken into consideration as in the fourthembodiment.

This embodiment can similarly be applied to the method of the ninthembodiment, which utilizes the MIMO, and the methods of the 10th and11th embodiments, in which transmission rates can be set for respectiveradio channels. The 12th and 13th embodiments can be combined with eachother.

14th Embodiment

FIG. 19 is a flowchart showing a 14th embodiment of the invention. It isassumed here that all available radio channels have the sametransmission rate.

This embodiment is such that, in the eighth embodiment, when one or moreidle radio channels have been detected, the transmission buffer issearched to determine a total data size of transmission-standby dataframes in the transmission buffer and the total data size is representedby D (S611). The total data size D is compared with a threshold valueDth (S612). If D<Dth, transmissions are not performed immediately andwaiting is done until the number of transmission-standby data framesincreases to such an extent that a relationship D≧Dth is satisfied. Ifthe relationship D≧Dth is satisfied, the process moves to step S405,where data packets are generated from data frames.

On the other hand, if a prescribed time t elapses before satisfaction ofthe relationship D≧Dth (S613), the process immediately moves to stepS405, where data packets are generated from a transmission-standby dataframe(s).

In this embodiment, the same waiting condition as in the fourthembodiment is set. It is intended to increase the transmissionefficiency by waiting when the total data size D of the transmissionbuffer is small. However, waiting for satisfaction of the conditionlimitlessly may lower the transmission efficiency contrary to theintention, and hence the time-related limitation is provided. Thestorage status of the transmission buffer may be taken intoconsideration as in the fourth embodiment.

This embodiment can similarly be applied to the method of the ninthembodiment, which utilizes the MIMO, and the methods of the 10th and11th embodiments, in which transmission rates can be set for respectiveradio channels. The 12th and 14th embodiments can be combined with eachother.

The relationship between the number N of idle channels and the thresholdvalue Nth in the 13th embodiment and the relationship between the totaldata size D of the transmission buffer and the threshold value Dth inthe 14th embodiment may be combined with each other. For example, theAND of the two relationships may be employed as a waiting condition.

[Configuration of Wireless Packet Communication Apparatus]

FIG. 22 shows a wireless packet communication apparatus according to anembodiment of the invention. Although the following description will bedirected to the configuration of a wireless packet communicationapparatus capable of transmitting and receiving three data packetssimultaneously using three radio channels #1, #2, and #3, theparallelism number may be set arbitrarily. Where MIMO is used for eachradio channel, data packets can be transmitted and receivedsimultaneously in the number of simultaneous transmissions that is equalto the sum of MIMO numbers of plural respective radio channels. However,the MIMO will not be taken into consideration in the followingdescription.

As shown in the figure, the wireless packet communication apparatus isequipped with transmission/reception blocks 10-1, 10-2, and 10-3, atransmission buffer 21, a data packet generating block 22, a data framemanagement block 23, an analyzer of channels' occupation status 24, apacket switching block 25, a packet order management block 26, and adata frame extraction block 27.

The transmission/reception blocks 10-1, 10-2, and 10-3 perform radiocommunications on different radio channels #1, #2, and #3. These radiochannels have different radio frequencies etc. and hence are independentof each other, and can perform radio communications simultaneously usingplural radio channels. Each transmission/reception block 10 is equippedwith a modulator 11, a transmitter 12, an antenna 13, a receiver 14, ademodulator 15, a frame selection block 16, and a carrier sense block17.

Radio frequency signals that are transmitted from other wireless packetcommunication apparatus on the different radio channels #1, #2, and #3are input to the receivers 14 via the antennas 13 of thetransmission/reception blocks 10-1, 10-2, and 10-3, respectively. Eachreceiver 14 corresponding to the associated radio channel performsreception processing including frequency conversion, filtering,quadrature detection, and analog to digital conversion (AD conversion)on the input radio frequency signal. A radio frequency signal on theradio propagation path of the associated radio channel is always inputto the receiver 14 except during periods when the antenna 13 connectedto it is used for transmission. The receiver 14 outputs, to the carriersense block 17, a received signal strength indication (hereinafter RSSI)signal indicating received electric field strength of the associatedradio channel. When a radio frequency signal transmitted on the radiochannel corresponding to the receiver 14 is received, the receiver 14outputs a baseband signal produced by the reception processing to thedemodulator 15.

The demodulator 15 performs demodulation processing on the basebandsignal received from the receiver 14, and outputs a resulting datapacket to the frame selection block 16. The frame selection block 16performs a CRC check on the input data packet. If the data packet hasbeen received correctly, the frame selection block 16 judges whether thedata packet is directed to its own station. More specifically, the frameselection block 16 checks whether the destination ID of the data packetcoincides with its own station. If the data packet is directed to itsown station, the frame selection block 16 outputs the data packet to thepacket order management block 26. At the same time, reply processing isperformed in which an ACK packet generating block (not shown) generatesa delivery acknowledgment packet and sends it to the modulator 11. Intransmitting the ACK packet, a transmission mode may be set (e.g.,setting of a transmission rate and setting of non-use of MIMO). On theother hand, if the data packet is not directed to its own station, theframe selection block 16 discards the packet.

The packet order management block 26 checks sequence numbers that areattached to received data packets and rearranges the received datapackets in proper order, that is, in order of the sequence numbers.Resulting data packets are output to the data frame extraction block 27as a reception data packet sequence. The data frame extraction block 27eliminates packet headers from the individual data packets included inthe reception data packet sequence, and outputs resulting data as areception data frame sequence.

When receiving an RSSI signal, the carrier sense block 17 compares thevalue of received electric field strength represented by the RSSI signalwith a preset threshold value. If a state that the value of receivedelectric field strength is smaller than the threshold value continuesfor a prescribed period, the carrier sense block 17 judges that theassigned radio channel is idle. Otherwise, the carrier sense block 17judges that the assigned radio channel is busy. The carrier sense blocks17 corresponding to the respective radio channels output such judgmentresults as carrier sense results CS1-CS3. In each transmission/receptionblock 10, no RSSI signal is input to the carrier sense block 17 whilethe antenna 13 is in a transmission state. When the antenna 13 hasalready been rendered in a transmission state, another data packetcannot be transmitted simultaneously as the radio frequency signal byusing the same antenna 13. Therefore, when receiving no RSSI signal,each carrier sense block 17 outputs a carrier sense result indicatingthat the assigned radio channel is busy.

Carrier sense results CS1-CS3 that are output from the carrier senseblocks 17 corresponding to the respective radio channels are input tothe analyzer of channels' occupation status 24. The analyzer ofchannels' occupation status 24 manages the idle statuses of therespective radio channels on the basis of the carrier sense resultscorresponding to the respective radio channels, and communicates suchinformation as idle radio channels and the number of idle radio channelsto the data frame management block 23 (FIG. 21, a).

On the other hand, sent data frames to be transmitted are input to andbuffered by the transmission buffer 21. The sent data frames consists ofone or plural data frames. The transmission buffer 21 successivelycommunicates, to the data frame management block 23, the number of dataframes in its possession, ID information of destination wireless packetcommunication apparatus, data sizes, address information indicatingpositions in the buffer, and other information (b).

The data frame management block 23 determines how to generate datapackets from what data frames and on what radio channels to transmitgenerated data packets according to one of the various controlalgorithms of the above-described first to 14th embodiments on the basisof data-frame-related information for each destination terminal ID thatis communicated from the transmission buffer 21 andradio-channel-related information that is communicated from the analyzerof channels' occupation status 24, and informs the transmission buffer21, the data packet generating block 22, and the data packet switchingblock 25 about determination results (c, d, e). For example, in the caseof the first embodiment, if the number N of idle radio channels issmaller than the number K of transmission-standby data frames in thetransmission buffer 21, the number of data packets to be transmittedsimultaneously is set equal to the number N of idle radio channels andaddress information designating N data frames among the K data frames iscommunicated to the transmission buffer 21 (c). Information necessaryfor generating N data packets from data frames that are input from thetransmission buffer 21 is communicated to the data packet generatingblock 22 (d). The packet switching block 25 is informed ofcorrespondence between N data packets generated by the data packetgenerating block 22 and the idle radio channels (e). Similar processingis performed for each of the control algorithms of the otherembodiments.

The transmission buffer 21 outputs the output-designated data frames tothe data packet generating block 22 (f). The data packet generatingblock 22 extracts the data regions from the respective data frames,generates plural data blocks having the same packet time length, andgenerates each data packet by adding, to the data block therefor, apacket header including control information such as ID information of adestination terminal of the data packet and a sequence number indicatinga place of the data frame in the sequence and a CRC code (FCS portion)as an error detecting code. The control information also includesinformation that is necessary for conversion into the original dataframe when the receive-side station receives the data packet. The packetswitching block 25 correlates the data packets received from the datapacket generating block 22 with the respective radio channels.

As a result of the above correlation, the data packets that areallocated to the radio channels #1, #2, and #3 are input to themodulators 11 of the transmission/reception blocks 10-1, 10-2, and 10-3,respectively. When receiving the data packet from the packet switchingblock 25, each modulator 11 performs prescribed modulation processing onthe data packet and outputs the thus-processed data packet to theassociated transmitter 12. Each transmitter 12 performs transmissionprocess including digital to analog conversion (DA conversion),frequency conversion, filtering, and power amplification on themodulation-processed data packet that is received from the associatedmodulator 11, and transmits the thus-processed data packet on thecorresponding radio channel via the associated antenna 13.

The invention is not limited to the above embodiments and variousmodifications may be made without departing from the spirit and scope ofthe invention. Any improvement may be made in part or all of thecomponents.

INDUSTRIAL APPLICABILITY

According to the present invention, plural data packets generated fromone or plural data frames are transmitted simultaneously in parallel ifplural radio channels are idle at the same time. Therefore, the maximumthroughput is increased greatly and efficient wireless packetcommunication is realized.

Further, since the number of data frames to be transmittedsimultaneously is determined properly on the basis of the number ofdetected idle channels and the number of transmission-standby dataframes, the substantial throughput can be increased further.

Still further, even in transmitting plural data packets simultaneouslyusing plural radio channels simultaneously, a problem that an ACK packetcannot be received due to influence of leakage power from a radiochannel being used for a transmission can be avoided by equalizing thepacket time lengths of the respective data packets. The throughput isthus increased.

1. A wireless packet communication method transmitting a data packetbetween two stations (“STAs”) that use plural radio channels, by using aradio channel that is judged idle by carrier sensing, characterized by:when it is detected by said carrier sensing that plural radio channelsare idle at the same time, transmitting plural data packetssimultaneously from one STA to another STA using plural idle radiochannels, characterized in that: when a number K of transmission-standbydata frames exceeds the number N of idle channels, said STA waits untila relationship N≧K is satisfied, all radio channels become idle beforesaid relationship N≧K is satisfied, a prescribed time elapses beforesaid relationship N≧K is satisfied, or the number or a data size oftransmission-standby data frames reaches a prescribed value before saidrelationship N≧K is satisfied; and then generates and simultaneouslytransmits data packets in a number according to the number of idle radiochannels.
 2. A wireless packet communication method transmitting a datapacket between two stations (“STAs”) that use plural radio channels, byusing a radio channel that is judged idle by carrier sensing,characterized by: when it is detected by said carrier sensing thatplural radio channels are idle at the same time, transmitting pluraldata packets simultaneously from one STA to another STA using pluralidle radio channels, characterized in that: when a number K oftransmission-standby data frames is smaller than a number N of idlechannels, said STA waits until a relationship N=K is satisfied, aprescribed time elapses before said relationship N=K is satisfied, orthe number or a data size of transmission-standby data frames reaches aprescribed value before said relationship N=K is satisfied; and thengenerates and simultaneously transmits plural data packets.
 3. Awireless packet communication method transmitting a data packet betweentwo stations (“STAs”) that use plural radio channels, by using a radiochannel that is judged idle by carrier sensing, characterized by: whenit is detected by said carrier sensing that plural radio channels areidle at the same time, transmitting plural data packets simultaneouslyfrom one STA to another STA using plural idle radio channels andMultiple Input Multiple Output (“MIMO”), where each of the plural datapackets require same amount of time for transmission from one STA toanother STA, the plural data packets being in a number that is equal toa sum of MIMO numbers of plural respective radio channels, and said STAscapable of using plural radio channels and MIMO together, characterizedin that: when a number K of transmission-standby data frames exceeds anumber of simultaneous transmissions T, the number of simultaneoustransmissions T being said sum of said MIMO numbers of said pluralrespective radio channels, said STA waits until a relationship T≧K issatisfied, all radio channels become idle before said relationship T≧Kis satisfied, a prescribed time elapses before said relationship T≧K issatisfied, or a number or a data size of transmission-standby dataframes reaches a prescribed value before said relationship T≧K issatisfied; and then said STA generates and simultaneously transmits datapackets in a number according to the number of simultaneoustransmissions.
 4. A wireless packet communication method transmitting adata packet between two stations (“STAs”) that use plural radiochannels, by using a radio channel that is judged idle by carriersensing, characterized by: when it is detected by said carrier sensingthat plural radio channels are idle at the same time, transmittingplural data packets simultaneously from one STA to another STA usingplural idle radio channels and Multiple Input Multiple Output (“MIMO”),where each of the plural data packets require same amount of time fortransmission from one STA to another STA, the plural data packets beingin a number that is equal to a sum of MIMO numbers of plural respectiveradio channels, and said STAs capable of using plural radio channels andMIMO together, characterized in that: when a number K oftransmission-standby data frames is smaller than a number ofsimultaneous transmissions T, the number of simultaneous transmissions Tbeing said sum of said MIMO numbers of said plural respective radiochannels, said STA waits until a relationship T=K is satisfied, aprescribed time elapses before said relationship T=K is satisfied, or anumber or a data size of transmission-standby data frames reaches aprescribed value before said relationship T=K is satisfied; and thensaid STA generates and simultaneously transmits plural data packets. 5.A wireless packet communication method transmitting a data packetbetween two stations (“STAs”) that use plural radio channels, by using aradio channel that is judged idle by carrier sensing, characterized by:when it is detected by said carrier sensing that plural radio channelsare idle at the same time, generating plural data packets; andtransmitting plural data packets simultaneously from one STA to anotherSTA using plural idle radio channels, where each of the plural datapackets require same amount of time for transmission from one STA toanother STA, characterized in that: when a number K oftransmission-standby data frames exceeds the number N of idle channels,said STA waits until a relationship N≧K is satisfied, all radio channelsbecome idle before said relationship N≧K is satisfied, a prescribed timeelapses before said relationship N≧K is satisfied, or the number or adata size of transmission-standby data frames reaches a prescribed valuebefore said relationship N≧K is satisfied; and then generates andsimultaneously transmits data packets in a number according to thenumber of idle radio channels.
 6. A wireless packet communication methodtransmitting a data packet between two stations (“STAs”) that use pluralradio channels, by using a radio channel that is judged idle by carriersensing, characterized by: when it is detected by said carrier sensingthat plural radio channels are idle at the same time, generating pluraldata packets; and transmitting plural data packets simultaneously fromone STA to another STA using plural idle radio channels, where each ofthe plural data packets require same amount of time for transmissionfrom one STA to another STA, characterized in that: when a number K oftransmission-standby data frames is smaller than a number N of idlechannels, said STA waits until a relationship N=K is satisfied, aprescribed time elapses before said relationship N=K is satisfied, orthe number or a data size of transmission-standby data frames reaches aprescribed value before said relationship N=K is satisfied; and thengenerates and simultaneously transmits plural data packets.
 7. Awireless packet communication method transmitting a data packet betweentwo stations (“STAs”) that use plural radio channels, by using a radiochannel that is judged idle by carrier sensing, characterized by: whenit is detected by said carrier sensing that plural radio channels areidle at the same time, generating plural data packets; and transmittingplural data packets simultaneously from one STA to another STA usingplural idle radio channels and Multiple Input Multiple Output (“MIMO”),where each of the plural data packets require same amount of time fortransmission from one STA to another STA, the plural data packets beingin a number that is equal to a sum of MIMO numbers of plural respectiveradio channels, and said STAs capable of using plural radio channels andMIMO together, characterized in that: when a number K oftransmission-standby data frames exceeds a number of simultaneoustransmissions T, the number of simultaneous transmissions T being saidsum of said MIMO numbers of said plural respective radio channels, saidSTA waits until a relationship T≧K is satisfied, all radio channelsbecome idle before said relationship T≧K is satisfied, a prescribed timeelapses before said relationship T≧K is satisfied, or a number or a datasize of transmission-standby data frames reaches a prescribed valuebefore said relationship T≧K is satisfied; and then said STA generatesand simultaneously transmits data packets in a number according to thenumber of simultaneous transmissions.
 8. A wireless packet communicationmethod transmitting a data packet between two stations (“STAs”) that useplural radio channels, by using a radio channel that is judged idle bycarrier sensing, characterized by: when it is detected by said carriersensing that plural radio channels are idle at the same time, generatingplural data packets; and transmitting plural data packets simultaneouslyfrom one STA to another STA using plural idle radio channels andMultiple Input Multiple Output (“MIMO”), where each of the plural datapackets require same amount of time for transmission from one STA toanother STA, the plural data packets being in a number that is equal toa sum of MIMO numbers of plural respective radio channels, and said STAscapable of using plural radio channels and MIMO together, characterizedin that: when a number K of transmission-standby data frames is smallerthan a number of simultaneous transmissions T, the number ofsimultaneous transmissions T being said sum of said MIMO numbers of saidplural respective radio channels, said STA waits until a relationshipT=K is satisfied, a prescribed time elapses before said relationship T=Kis satisfied, or a number or a data size of transmission-standby dataframes reaches a prescribed value before said relationship T=K issatisfied; and then said STA generates and simultaneously transmitsplural data packets.
 9. A wireless packet communication methodtransmitting a data packet between two stations (“STAs”) that use pluralradio channels and setting transmission rates for respective radiochannels, by using a radio channel that is judged idle by carriersensing, characterized by: when it is detected by said carrier sensingthat plural radio channels are idle at the same time, generating pluraldata packets in accordance with transmission rates of plural idle radiochannels; and transmitting plural data packets simultaneously from oneSTA to another STA using plural idle radio channels, where each of theplural data packets require same amount of time for transmission fromone STA to another STA, characterized in that: when a number K oftransmission-standby data frames exceeds the number N of idle channels,said STA waits until a relationship N≧K is satisfied, all radio channelsbecome idle before said relationship N≧K is satisfied, a prescribed timeelapses before said relationship N≧K is satisfied, or the number or adata size of transmission-standby data frames reaches a prescribed valuebefore said relationship N≧K is satisfied; and then generates andsimultaneously transmits data packets in a number according to thenumber of idle radio channels.
 10. A wireless packet communicationmethod transmitting a data packet between two stations (“STAs”) that useplural radio channels and setting transmission rates for respectiveradio channels, by using a radio channel that is judged idle by carriersensing, characterized by: when it is detected by said carrier sensingthat plural radio channels are idle at the same time, generating pluraldata packets in accordance with transmission rates of plural idle radiochannels; and transmitting plural data packets simultaneously from oneSTA to another STA using plural idle radio channels, where each of theplural data packets require same amount of time for transmission fromone STA to another STA, characterized in that: when a number K oftransmission-standby data frames is smaller than a number N of idlechannels, said STA waits until a relationship N=K is satisfied, aprescribed time elapses before said relationship N=K is satisfied, orthe number or a data size of transmission-standby data frames reaches aprescribed value before said relationship N=K is satisfied; and thengenerates and simultaneously transmits plural data packets.
 11. Awireless packet communication method transmitting a data packet betweentwo stations (“STAs”) that use plural radio channels and settingtransmission rates for respective radio channels, by using a radiochannel that is judged idle by carrier sensing, characterized by: whenit is detected by said carrier sensing that plural radio channels areidle at the same time, generating plural data packets in accordance withtransmission rates of plural idle radio channels; and transmittingplural data packets simultaneously from one STA to another STA usingplural idle radio channels and Multiple Input Multiple Output (“MIMO”),where each of the plural data packets require same amount of time fortransmission from one STA to another STA, the plural data packets beingin a number that is equal to a sum of MIMO numbers of plural respectiveradio channels, and said STAs capable of using plural radio channels andMIMO together, characterized in that: when a number K oftransmission-standby data frames exceeds a number of simultaneoustransmissions T, the number of simultaneous transmissions T being saidsum of said MIMO numbers of said plural respective radio channels, saidSTA waits until a relationship T≧K is satisfied, all radio channelsbecome idle before said relationship T≧K is satisfied, a prescribed timeelapses before said relationship T≧K is satisfied, or a number or a datasize of transmission-standby data frames reaches a prescribed valuebefore said relationship T≧K is satisfied; and then said STA generatesand simultaneously transmits data packets in a number according to thenumber of simultaneous transmissions.
 12. A wireless packetcommunication method transmitting a data packet between two stations(“STAs”) that use plural radio channels and setting transmission ratesfor respective radio channels, by using a radio channel that is judgedidle by carrier sensing, characterized by: when it is detected by saidcarrier sensing that plural radio channels are idle at the same time,generating plural data packets in accordance with transmission rates ofplural idle radio channels; and transmitting plural data packetssimultaneously from one STA to another STA using plural idle radiochannels and Multiple Input Multiple Output (“MIMO”), where each of theplural data packets require same amount of time for transmission fromone STA to another STA, the plural data packets being in a number thatis equal to a sum of MIMO numbers of plural respective radio channels,and said STAs capable of using plural radio channels and MIMO together,characterized in that: when a number K of transmission-standby dataframes is smaller than a number of simultaneous transmissions T, thenumber of simultaneous transmissions T being said sum of said MIMOnumbers of said plural respective radio channels, said STA waits until arelationship T=K is satisfied, a prescribed time elapses before saidrelationship T=K is satisfied, or a number or a data size oftransmission-standby data frames reaches a prescribed value before saidrelationship T=K is satisfied; and then said STA generates andsimultaneously transmits plural data packets.
 13. A wireless packetcommunication method transmitting a data packet between two stations(“STAs”) that use plural radio channels and setting transmission ratesfor respective radio channels, by using a radio channel that is judgedidle by carrier sensing, characterized by: when it is detected by saidcarrier sensing that plural radio channels are idle at the same time,setting transmission rates of plural idle radio channels to a sametransmission rate; generating plural data packets; and transmittingplural data packets simultaneously from one STA to another STA usingplural idle radio channels, where each of the plural data packetsrequire same amount of time for transmission from one STA to anotherSTA, characterized in that: when a number K of transmission-standby dataframes exceeds the number N of idle channels, said STA waits until arelationship N≧K is satisfied, all radio channels become idle beforesaid relationship N≧K is satisfied, a prescribed time elapses beforesaid relationship N≧K is satisfied, or the number or a data size oftransmission-standby data frames reaches a prescribed value before saidrelationship N≧K is satisfied; and then generates and simultaneouslytransmits data packets in a number according to the number of idle radiochannels.
 14. A wireless packet communication method transmitting a datapacket between two stations (“STAs”) that use plural radio channels andsetting transmission rates for respective radio channels, by using aradio channel that is judged idle by carrier sensing, characterized by:when it is detected by said carrier sensing that plural radio channelsare idle at the same time, setting transmission rates of plural idleradio channels to a same transmission rate; generating plural datapackets; and transmitting plural data packets simultaneously from oneSTA to another STA using plural idle radio channels, where each of theplural data packets require same amount of time for transmission fromone STA to another STA, characterized in that: when a number K oftransmission-standby data frames is smaller than a number N of idlechannels, said STA waits until a relationship N=K is satisfied, aprescribed time elapses before said relationship N=K is satisfied, orthe number or a data size of transmission-standby data frames reaches aprescribed value before said relationship N=K is satisfied; and thengenerates and simultaneously transmits plural data packets.
 15. Awireless packet communication method transmitting a data packet betweentwo stations (“STAs”) that use plural radio channels and settingtransmission rates for respective radio channels, by using a radiochannel that is judged idle by carrier sensing, characterized by: whenit is detected by said carrier sensing that plural radio channels areidle at the same time, setting transmission rates of plural idle radiochannels to a same transmission rate; generating plural data packets;and transmitting plural data packets simultaneously from one STA toanother STA using plural idle radio channels and Multiple Input MultipleOutput (“MIMO”), where each of the plural data packets require sameamount of time for transmission from one STA to another STA, the pluraldata packets being in a number that is equal to a sum of MIMO numbers ofplural respective radio channels, and said STAs capable of using pluralradio channels and MIMO together, characterized in that: when a number Kof transmission-standby data frames exceeds a number of simultaneoustransmissions T, the number of simultaneous transmissions T being saidsum of said MIMO numbers of said plural respective radio channels, saidSTA waits until a relationship T≧K is satisfied, all radio channelsbecome idle before said relationship T≧K is satisfied, a prescribed timeelapses before said relationship T≧K is satisfied, or a number or a datasize of transmission-standby data frames reaches a prescribed valuebefore said relationship T≧K is satisfied; and then said STA generatesand simultaneously transmits data packets in a number according to thenumber of simultaneous transmissions.
 16. A wireless packetcommunication method transmitting a data packet between two stations(“STAs”) that use plural radio channels and setting transmission ratesfor respective radio channels, by using a radio channel that is judgedidle by carrier sensing, characterized by: when it is detected by saidcarrier sensing that plural radio channels are idle at the same time,setting transmission rates of plural idle radio channels to a sametransmission rate; generating plural data packets; and transmittingplural data packets simultaneously from one STA to another STA usingplural idle radio channels and Multiple Input Multiple Output (“MIMO”),where each of the plural data packets require same amount of time fortransmission from one STA to another STA, the plural data packets beingin a number that is equal to a sum of MIMO numbers of plural respectiveradio channels, and said STAs capable of using plural radio channels andMIMO together, characterized in that: when a number K oftransmission-standby data frames is smaller than a number ofsimultaneous transmissions T, the number of simultaneous transmissions Tbeing said sum of said MIMO numbers of said plural respective radiochannels, said STA waits until a relationship T=K is satisfied, aprescribed time elapses before said relationship T=K is satisfied, or anumber or a data size of transmission-standby data frames reaches aprescribed value before said relationship T=K is satisfied; and thensaid STA generates and simultaneously transmits plural data packets.